.passtrengthMeter{
    position: relative;
    width: 100%;
  }
  
  .passtrengthMeter > input{
    width: 100%;
    display: inline-block;
    padding: 5px;
    box-sizing: border-box;
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
  }
  
  .passtrengthMeter > input:focus {
      outline-width: 0;
  }
  
  .passtrengthMeter::after{
    content: '';
    height: 3px;
    overflow: hidden;
    width: 0%;
    transition: width .5s;
    position: absolute;
    left: 0px;
    bottom: 0px;
  }
  
  .passtrengthMeter.weak::after{
    background-color: #EC644B;
    width: 25%;
  }
  
  .passtrengthMeter.medium::after{
    content: '';
    background-color: #E87E04;
    width: 50%;
  }
  
  .passtrengthMeter.strong::after{
    content: '';
    background-color: #EFBF17;
    width: 75%;
  }
  
  .passtrengthMeter.very-strong::after{
    content: '';
    background-color: #42A72A;
    width: 100%;
  }
  
  .passtrengthMeter .showPassword{
    position: absolute;
    width: 20px;
    top: calc(50% - 10px);
    right: 10px;
  }
  
  .passtrengthMeter .showPassword.active{
    opacity: .5;
  }
  
  .passtrengthMeter .showPassword img{
    display: block;
    width: 100%;
    height: auto;
  }
  
  .passtrengthMeter .showPassword:hover{
    cursor: pointer;
  }
  
  .passtrengthMeter .tooltip {
    background: #000000;
    top: 100%;
    color: #fff;
    font-family:Arial;
    font-size: 12px;
    display: block;
    left: 50%;
    margin-bottom: 15px;
    opacity: 0;
    padding: 5px 10px;
    pointer-events: none;
    position: absolute;
    min-width: 70px;
    box-sizing: border-box;
    text-align: center;
    z-index: 10;
    -webkit-transform: translateY(5px);
       -moz-transform: translateY(5px);
        -ms-transform: translateY(5px);
         -o-transform: translateY(5px);
            transform: translateY(5px);
    -webkit-transition: all .25s ease-out;
       -moz-transition: all .25s ease-out;
        -ms-transition: all .25s ease-out;
         -o-transition: all .25s ease-out;
            transition: all .25s ease-out;
    -webkit-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
       -moz-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
        -ms-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
         -o-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
            box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  }
  
  .passtrengthMeter.weak .tooltip{
    background-color: #EC644B;
  }
  .passtrengthMeter.weak .tooltip:after{
    border-left: solid transparent 7px;
    border-right: solid transparent 7px;
    border-bottom: solid #EC644B 7px;
    top: -7px;
    content: " ";
    height: 0;
    left: 50%;
    margin-left: -7px;
    position: absolute;
    width: 0;
  }
  
  .passtrengthMeter.medium .tooltip{
    background-color: #E87E04;
  }
  .passtrengthMeter.medium .tooltip:after{
    border-left: solid transparent 7px;
    border-right: solid transparent 7px;
    border-bottom: solid #E87E04 7px;
    top: -7px;
    content: " ";
    height: 0;
    left: 50%;
    margin-left: -7px;
    position: absolute;
    width: 0;
  }
  
  .passtrengthMeter.strong .tooltip{
    background-color: #EFBF17;
  }
  .passtrengthMeter.strong .tooltip:after{
    border-left: solid transparent 7px;
    border-right: solid transparent 7px;
    border-bottom: solid #EFBF17 7px;
    top: -7px;
    content: " ";
    height: 0;
    left: 50%;
    margin-left: -7px;
    position: absolute;
    width: 0;
  }
  
  .passtrengthMeter.very-strong .tooltip{
    background-color: #42A72A;
  }
  .passtrengthMeter.very-strong .tooltip:after{
    border-left: solid transparent 7px;
    border-right: solid transparent 7px;
    border-bottom: solid #42A72A 7px;
    top: -7px;
    content: " ";
    height: 0;
    left: 50%;
    margin-left: -7px;
    position: absolute;
    width: 0;
  }
  
  .passtrengthMeter.weak .tooltip:before {
    top: -20px;
    content: " ";
    display: block;
    height: 20px;
    left: 0;
    position: absolute;
    width: 100%;
  }
  
  .passtrengthMeter .tooltip:after {
    border-left: solid transparent 7px;
    border-right: solid transparent 7px;
    border-bottom: solid #000000 7px;
    top: -7px;
    content: " ";
    height: 0;
    left: 50%;
    margin-left: -7px;
    position: absolute;
    width: 0;
    -webkit-transition: all .25s ease-out;
       -moz-transition: all .25s ease-out;
        -ms-transition: all .25s ease-out;
         -o-transition: all .25s ease-out;
            transition: all .25s ease-out;
  }
  
  .passtrengthMeter:hover .tooltip {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: translateY(10px);
       -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
         -o-transform: translateY(10px);
            transform: translateY(10px);
  }
  
  .lte8 .passtrengthMeter .tooltip {
    display: none;
  }
  
  .lte8 .passtrengthMeter:hover .tooltip {
    display: block;
  }